﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;

namespace SosData
{
    public class PlantillaParametro : EntityBase
    {
        private string _Nombre;

        public string Nombre
        {
            get { return _Nombre; }
            set { _Nombre = value ; }
        }

        
        /// <summary>
        /// Comprobar que el nombre contenga "{}" o "#" para distinguir entre parametro como variable o parametro como plantilla
        /// </summary>
        /// <returns>Nombre</returns>
        private string ComprobarNombre()
        {
            string str = Nombre;

            if (str.StartsWith("{"))
            {
                if (!str.EndsWith("}"))
                {
                    str = Nombre + "}";
                }
            }

            if (str.StartsWith("#"))
            {
                if (!Nombre.EndsWith("#"))
                {
                    str = Nombre + "#";
                }
            }

            if (!str.Contains("{") && !Nombre.Contains("#"))
            {
                str = String.Format("{{{0}}}", Nombre); //Por defecto se establece parametro como valor variable
            }

            _Nombre = str;
            return str;
        }

        private string _valor;
        public string Valor
        {
            get { return _valor; }
            set { _valor = value; }
        }
    

        public virtual PlantillaContenido PlantillaContenidos { get; set; }

    }
}
